Computing devices such as desktop computers, laptops, smart phones, tablets, and other mobile devices have grown to be an essential part of daily life. People use computing devices for a wide variety of purposes including for personal and professional use. Many of these devices transmit and receive data over a network (e.g., 2G, 3G, 4G, WiFi, Bluetooth, etc.), such as for email, SMS text messaging, accessing the Internet, and other types of communications. Client computing devices that require network data transmission typically operate independently from one another. Different applications (i.e., apps) that require network data transmission generally do not communicate with one another to determine (efficient) ways to utilize and/or share a network connection(s). Moreover, these devices usually make decisions on their own with respect to vital aspects such as determining a connection type, network interface, etc., in the process of acquiring and/or relinquishing a connection resource (e.g., a TCP socket) regardless of their transmission and bandwidth characteristics or destination endpoints. However, poor decisions by the devices in this regard can have a direct negative impact on device performance and battery life, which negatively affects overall user experience.